Mobile communication systems have been developed because there has been a need to allow people to move away from fixed telephone terminals without losing their ability to be reached. While the use of different data transmission services in offices has increased, different data services have also been introduced into mobile communication systems. Portable computers enable efficient data processing wherever a user moves. Mobile communication networks provide a user with efficient access network to actual data networks for mobile data transmission.
Digital mobile communication systems, such as the pan-European mobile communication system GSM (Global System for Mobile Communication), support particularly well mobile data transmission. For the GSM, a particular packet mode data transfer service GPRS (General Packet Radio Service) has been developed.
Prior art FIG. 1a shows a block diagram of principal components in the operation of the GPRS system. A packet switching controller SGSN (Serving GPRS Support Node) controls the operation of packet switching service on the cellular network side. The packet switching controller SGSN controls the sign-on and sign-off of the mobile station MS, the updating of the location of the mobile station MS and the routing of data packets to their correct destinations. The mobile station MS is connected to the base station subsystem BSS through a radio interface Um. The base station subsystem is connected to the packet switching controller SGSN through the BSS-SGSN interface Gb.
In the base station subsystem BSS, the base station BTS and the base station controller BSC have been connected to each other by a BTS-BSC interface Abis. The location of the packet switching controller SGSN in the mobile station network can vary, for example, according to which technical implementation is being used. Although in FIG. 1a, the packet switching controller SGSN has been marked outside the base station subsystem BSS, the packet switching controller SGSN can be placed, for example, as a part of the base station BTS connected to the base station subsystem BSS or as a part of the base station controller BSC.
Prior Art FIG. 1b illustrates the various layers of operation of both the mobile station MS and the packet switching controller SGSN. Each layer provides a different function. The International Standardization Organization, ISO, has formulated an OSI model (Open Systems Interconnection) for grouping data transfer into different functional layers. In this model, there are seven layers which are not necessarily needed in all data communication systems.
Transferable information, such as control signaling and data transmitted by the user, between a mobile station MS and a packet switching controller SGSN is exchanged preferably in a data frame mode. The data frame of each layer consists of a header field and a data field. FIG. 1b shows also the structure of data frames being used in the GPRS system in different layers.
The information contained in the data field can be, for example, data entered by the user of the mobile station or signaling data. The data field may contain confidential information which has to be secured as reliably as possible before transmitting it to the radio path. In such a case, the encryption has to be executed in such a way that in all simultaneous connections between the packet switching controller SGSN and mobile stations MS connected to it, a separate encryption key is used. Conversely, it is not preferable to cipher the address data of the data frame by the same encryption key used in the ciphering of the data field, since mobile stations MS use a shared radio path resource, i.e. information in many different connections is transferred in the same channel, for example, at different time intervals. In this case, each mobile station should receive all messages transmitted in the channel concerned and decrypt at least the encryption of the address data to identify to which mobile station the message is intended. Also the packet switching controller SGSN does not know which encryption key should be used.
In the following, the operational functions of the layers of the GPRS system have been presented. The lowest layer is called an MAC layer (Media Access Control) which controls the use of the radio path in the communication between the mobile station MS and the base station subsystem BSS, such as allocating channels for transmitting and receiving packets.
Data transmission between the base station subsystem and the packet controller SGSN in the lowest level is executed at the L2 layer (link layer) in which link layer protocol is used, such as LAPD protocol according to standard Q.921, frame relay protocol or the equivalent. The L2 layer may additionally contain also quality or routing data according to GPRS specifications. Layer L2 has properties of the physical layer and the link layer of the OSI model. The physical transmission line between the base station subsystem BSS and the packet controller SGSN depends, for example, on where the packet controller SGSN has been located in the system.
Above the MAC layer, there is an RLC layer (Radio Link Control) and its function is to divide the data frames formed by the LLC layer into fixed sized packets to be transmitted to the radio path and their transmission and retransmission when necessary. The length of the packets in the GRPS system is the length of one GSM time slot (approximately 0.577 ms).
LLC layer (Logical Link Control) provides a reliable transmission link between the mobile station MS and the packet controller SGSN. The LLC layer, for example, adds to the transmitted message error checking data by means of which it is intended to correct those incorrectly received messages and when necessary, the message can be retransmitted.
SNDC layer (Sub-Network Dependent Convergence) comprises functions like protocol conversions of transmitted information, compression, segmentation and segmentation of messages coming from the upper layer. Additionally, ciphering and deciphering are accomplished at the SNDC layer. The structure of the SNDC frame has been presented also in FIG. 1b. The SNDC frame comprises an SNDC header field (SNDC header) and an SNDC data field (SNDC data). The SNDC header field consists of protocol data (Network Layer Service access point Identity, NLSI) and of SNDC control data, such as determinations of compression, segmentation and ciphering. The SNDC layer functions as a protocol adapter between protocols used at the upper level and the protocol of the LLC layer (link layer).
The transmitted information comes preferably as data packets to the SNDC layer from some application, such as messages according to the GPRS system or packets of the Internet protocol (IP). The application can be, for example, a data application of a mobile station, a telecopy application, a computer program which has a data transmission link to a mobile station, etc.
The MAC layer, RLC layer, LLC layer and the L2 layer contain properties which are described at layer 2 in the OSI model. The above-mentioned layers and the layers described in the OSI model are not, however, distinctly coherent.
The SNDC frame is transferred to the LLC layer where an LLC header field is added to the frame. The LLC header field consists of a Temporary Logical Link Identity (TLLI) and an LLC control part. The packet controller GPRS establishes a TLLI identity for each data transmission link between a mobile station MS and a packet controller GPRS. This data is used in data transmission for defining which data transmission link each message belongs to. Simultaneously, the same TLLI identity can only be used in one data transmission link. After the termination of the link, the TLLI identity used in the link can be allocated to a new link to be subsequently formed. The LLC control part defines the frame number and the command type (info, acknowledge, retransmission request etc.) for ensuring an error free data transfer.
With the various components of a conventional GPRS system of FIGS. 1a–1b now described, a more comprehensive system will now be disclosed. In particular, FIG. 1c illustrates a GPRS system including the various components discussed in FIGS. 1a–b hereinabove, i.e. SGSN, BSS, etc., in addition to other conventional components. For example, the GPRS system of FIG. 1c includes a packet switching controller GGSN (Gateway GPRS Support Node), Home Location Registers (HLRs), Mobile Switching Centers (MSC), Gateway Mobile Services Switching Center (GMSC), Equipment Identity Register (EIR), Mobile Telephone Network (PLMN), Pilot Directory Number (PDN), Switching Center/Visitor Location Register (MSC/VLR), etc.
In addition to the above components of FIG. 1c, a billing system 100 is included for charging customers for use of the GPRS system. Traditionally, such billing system 100 interfaces with a CGF (Charging Gateway Framework) which, in turn, interfaces with the SGSN and the GGSN via a conventional interface, Ga.
The prior art billing system 100 collects information from the GPRS equipment. Such information often takes the form of call description records (CDRs). CDRs traditionally provide a record of called numbers, and a date, time, length and so on of each telephone call. In use, the approach takes the GPRS CDRs, collects them into the CDF, does some processing (such as mapping call-start with call-end) and sends the CDRs to the billing system 100.
Unfortunately, such CDRs received from the GPRS equipment are insufficient in terms of allowing monitoring of the content of the traffic. Accordingly, the CGF does not allow for network accounting based on content. Content-based network accounting involves the collection of various types of information during users' communications over a network. Examples of such network accounting information may include, but is not limited to a session's source, destination, user name, duration, time, date, type of server, volume of data transferred, etc. Armed with such accounting information, various services may be provided that require network usage metering of some sort.
There is therefore a need for a technique of performing network accounting and charging for content usage in a wireless network environment.